/*
 * Voiture.h
 */

#ifndef VOITURE_H_
#define VOITURE_H_

class Portes;
class Passager;

class Voiture {
private:
	int capacite_passagers;
	int nb_passagers;
	int nbAttenteDescente;
	int nbPortes;
	Portes *portes;
	Passager ** voyageurs; // Tableau contenant les voyageurs de cette rame
	Passager ** descente; // Tableau 0.contenant les voyageurs désirant s'arrêter à la prochaine station
public:
	Voiture();
	Voiture(const int capacite, const int nbportes);
	void setCapacite(const int capacite);
	void ouvrirPortes(); // Ouvre toutes les portes de la rame
	void ouvrirPortes(const int index); // Ouvre uniquement la porte spécifiée
	void fermerPortes();
	void fermerPortes(const int index);
	bool getEtatPortes();
	int getCapacite();
	int getNbPassagers();
	int getAttente();
	void monter(Passager * pass);
	virtual ~Voiture();
};

#endif /* VOITURE_H_ */
